$(function () {
    let form = layui.form

    form.verify({
        nickname: function (value) {
            if (value.length > 6) {
                return '昵称长度必须在 1 ~ 6 个字符之间！'
            }
        }
    })
})

/* 
修改用户的基本信息 只能昵称和邮箱地址
1 先要将呗修改的数据写入到对象输入框中
1.1 操作dom
1.2 使用layui内置的方法 layui.form.val(要写入的表单,要写入的对象)
layui.form.val(要写入的表单,要写入的对象) 只要我们表单里面的input标签里面的 name 属性值与要写入的数据里面的 key 值一样
给表单提供 lay-filter='要写入的表单'
*/
// 初始化用户的基本信息
function initUserInfo() {
    $.ajax({
        method: 'GET',
        url: '/my/userinfo',
        success: function (res) {
            if (res.status !== 0) {
                return layui.layer.msg('获取用户信息失败！')
            }
            layui.form.val('formUserInfo', res.data)
        }
    })
}
initUserInfo()
/**
 * 完成修改用户信息的功能
 * 1. 需要给表单注册submit事件 阻止表单的默认行为
 * 2. 需要收集到 表单的数据
 * 3. 查阅接口文档 关注请求方式与请求参数 还有请求的类型
 * 4. 发送ajax
 * 5. 接收服务器响应回来的数据
 * 6. 判断是否修改成功 如果失败就需要提示用户
 * 7. 如果成功 需要更新页面上面的数据
 */

$('#editForm').on('submit', function (e) {
    //阻止表单的默认行为
    e.preventDefault()
    const data = $(this).serialize()
    $.ajax({
        method: 'POST',
        url: '/my/userinfo',
        data,
        success: res => {
            const {
                status,
                message
            } = res
            if (status !== 0) {
                return layui.layer.msg(message)
            }
            layui.layer.msg('修改成功')
            window.parent.getUserInfo()
        }
    })
})

$('#reset').on('click', function (e) {
    e.preventDefault()
    initUserInfo()
})